package com.dieusoft.box.ship.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 提单管理
 *
 * @author
 * @date Wed Jan 13 18:37:29 CST 2021
 */
@Data
@TableName("bill_of_lading_info")
public class BillOfLadingInfo {
    /**
     * null
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**
     * null
     */
    private String createBy;
    /**
     * null
     */
    private String updateBy;
    /**
     * null
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * null
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /**
     * null
     */
    private String sysOrgCode;
    /**
     * 提单类型
     */
    private String type;
    /**
     * 提单名称
     */
    private String title;
    /**
     * 关单号选择的数据
     */
    private String customsNumber = "[]";
    /**
     * 分单号选择的数据
     */
    private String otherCustomsNumber = "[]";
    /**
     * 收货人
     */
    private String consignee;
    /**
     * 发货人
     */
    private String consignor;
    /**
     * 通知人
     */
    private String notifier;
    /**
     * 第二通知人
     */
    private String secNotifier;
    /**
     * 国外代理
     */
    private String formForeignAgent;
    /**
     * 唛头
     */
    private String shipMarks;
    /**
     * 英文品名
     */
    private String enName;
    /**
     * 付款方式
     */
    @Dict(dicCode = "pay_type ")
    private String payType;
    /**
     * 提单形式
     */
    @Dict(dicCode = "form_lading")
    private String formLading;
    /**
     * 运输条款
     */
    @Dict(dicCode = "transport_clause")
    private String transportClause;
    /**
     * 件数
     */
    private Integer pieceNumber;
    /**
     * null
     */
    @Dict(dicCode = "total_type")
    private String pieceNumberUnit;
    /**
     * 毛重
     */
    private String totalWeight;
    /**
     * 体积
     */
    private String totalVolume;
    /**
     * 提单备注
     */
    private String billRemark;
    /**
     * null
     */
    private String shipId;

    private String otherOffNumberData = "[]";
    private String mainOffNumberData = "[]";
    /***************************************************2021-03新增***********************************************************/
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "ETD")
    private Date etd;

    /**
     * 船名
     */
    @ApiModelProperty(value = "船名")
    private String shipName;

    /**
     * 航次
     */
    @ApiModelProperty(value = "航次")
    private String voyageNumber;
    //收货地
    private String receiveAddress;
//    @Dict(dicCode = "shipmeng_mode")
//    private String shipmentMode;
    //收货地详细地址
    private String receiveAddressDesc;

    /**
     * 起运港
     */
    @ApiModelProperty(value = "起运港")
    private String portDeparture;

    private String polRemark;
    /**
     * 目的港
     */
    @ApiModelProperty(value = "目的港")
    private String portDestination;
    private String podRemark;
    private String placeDelivery;
    private String placeDeliveryDesc;
    private String destination;
    private String destinationDesc;
    private String prepaidAt;
    private String prepaidAtDesc;
    private String arrivalPlace;
    private String arrivalPlaceDesc;
    private String total;
    private String totalType;
    private String totalGrossWeight;
    private String totalCap;
    private Date signBillTime;
    private String signBillAddress;
    private String numberOfBill;


}
